The present invention relates generally to a system and method for providing an image to a display device, and more specifically to a system and method for providing an enhanced image to a display device.
Early personal computers were capable of displaying images in a mono-chromatic mode. The use of black and white monitors was adequate for displaying the textual information, and basic graphical information associated with early personal computers. By supporting only black and white images, early personal computers were able to efficiently utilize scarce memory. Efficient memory use was the result of black and white images requiring only a single pixel per bit. When an image was stored as a bit map only a single bit was needed to store one pixel of data.
As systems and applications became more sophisticated it became desirable to display pixel information in color. In order to store color information additional bits of memory were needed for each pixel. The number of pixels used to represent a specific color for a pixel is referred to as color depth.
The color depth of a modern personal computer system is defined to a default, or predetermined value during system start up. Common default color depth values include 8 and 16 bits of data per pixel. An 8 bit color depth accommodates 256 colors, while a 16 bit color depth accommodates 65,536 colors.
Eight or 16 bits of color depth is generally adequate for most applications. However, 24/32 bits of color are needed where high quality/true color images are desirable. A color depth of 24 bits provides a range of over 16.7 million colors. Generally, only 24 bits of data are actually used to produce true color images, however, because 24 bits of color data are often stored in a 32 word to accommodate memory partitioning, it is also sometimes referred to as a 32 color depth. Applications that display still pictures operate at the default color depth of the system. Therefore, when a default value of 8 or 16 bits is chosen still graphics, such as photographs, capable of being displayed in true color will be displayed at the lower color depth resolution.
In order to display still images in true 24 bit color, it is necessary to switch from 8 or 16 bit color depth to the full color 24 bit color depth by changing preferences and restarting the system. Upon resuming normal operation after reset, applications accessing the video memory could supply the full 24 bit pixel information to the video system.
Setting the color depth of a system requires that the entire display device support the required color depth. This is requires excess memory to be dedicated to portions of the display device that would operate adequately with only an 8 or 16 bit color mode. For example, word processing and many internet applications generally appear adequate using an 8 or 16 bit color depth. Prior methods, however, require the entire video memory space to be at an enhanced 24/32 operating mode even where less color depth is appropriate.
One prior art solution that addresses the situation where only a portion of a display needs to display enhanced colors is the use of overlay schemes. Overlay schemes have been used to display video, which requires greater than 16 bit color depth, to be displayed in a specified area of a display device while the remainder of the system remains at the default 8 or 16 bit color depth.
Overlays are supported by using a color key value stored at a specified location in the default image memory to indicate when it is desirable for a specified location of the display device to display a video image having a 24/32 color depth. For example, where color key value is 45, an 8 bit pixel location of the video map containing the value 45 indicates that an alternate location of memory will be accessed to provide a full 24 bit pixel value to the video image. While the use of overlay windows has been confined to use with video images, the applications utilizing an overlay window have not been used to access still images. Therefore, a system and method capable of implementing and/or utilizing the enhanced image drivers for non-dynamic images would be beneficial.